package com.kcwl.carrier.infrastructure.repository.po;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.kcwl.ddd.domain.repository.BasePO;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.Date;

/**
 * @描述 车辆信息表
 * @创建人 zhl
 * @创建时间 2022/10/31
 * @修改人和其它信息
 */
@EqualsAndHashCode(callSuper = true)
@TableName("vehicle_info")
@Data
public class VehicleInfoPO extends BasePO<VehicleInfoPO> {

    @ApiModelProperty(value = "车主id")
    @TableField("carrier_id")
    private Long carrierId;

    @ApiModelProperty(value = "车牌")
    @TableField("plate_number")
    private String plateNumber;

    @ApiModelProperty(value = "车型")
    @TableField("vehicle_type")
    private Long vehicleType;

    @ApiModelProperty(value = "载重")
    @TableField("loads")
    private Double loads;

    @ApiModelProperty(value = "行驶证照")
    @TableField("driving_license_pic")
    private String drivingLicensePic;

    @ApiModelProperty(value = "审核状态:未认证_1,认证通过_2,认证失败_3")
    @TableField("authentication_status")
    private Integer authenticationStatus;

    @ApiModelProperty(value = "驳回类型")
    @TableField("reject_type")
    private Integer rejectType;

    @ApiModelProperty(value = "审核备注")
    @TableField("authentication_remark")
    private String authenticationRemark;

    @ApiModelProperty(value = "提交时间")
    @TableField("submit_time")
    private Date submitTime;

    @ApiModelProperty(value = "认证时间")
    @TableField("authentication_time")
    private Date authenticationTime;

//    @ApiModelProperty(value = "审核备注")
//    @TableField("remark")
//    private String remark;

    @ApiModelProperty(value = "是否删除(0:未删除,1:已删除)")
    @TableField("is_del")
    private Integer isDel;

    @ApiModelProperty(value = "删除时间")
    @TableField("del_time")
    private Date delTime;

    @ApiModelProperty(value = "认证人")
    @TableField("authentication_person")
    private String authenticationPerson;

    @ApiModelProperty(value = "拒绝人")
    @TableField("reject_name")
    private String rejectName;

    @ApiModelProperty(value = "道路运输证号")
    @TableField("road_trans_certi_number")
    private String roadTransCertiNumber;

    @ApiModelProperty(value = "道路许可证有效开始时间")
    @TableField("period_start_date")
    private Date periodStartDate;

    @ApiModelProperty(value = "道路许可证过期时间")
    @TableField("period_end_date")
    private Date periodEndDate;

    @ApiModelProperty(value = "道路许可证是否过期，1：是，0：否")
    @TableField("is_overdue")
    private Integer isOverdue;

    @ApiModelProperty(value = "是否入网，1：是，0：否")
    @TableField("is_vehicle_enterprise_information")
    private Integer isVehicleEnterpriseInformation;

    @ApiModelProperty(value = "道路运营许可证")
    @TableField("road_trans_license_pic")
    private String roadTransLicensePic;

    @ApiModelProperty(value = "标签，车辆保险单")
    @TableField("car_insurance_policy_pic")
    private String carInsurancePolicyPic;

    @ApiModelProperty(value = "车牌照")
    @TableField("vehicle_plate_license_pic")
    private String vehiclePlateLicensePic;

    @ApiModelProperty(value = "道路运输证")
    @TableField("road_transport_pic")
    private String roadTransportPic;

    @ApiModelProperty(value = "车辆类型，0：普通车辆，1：无车承运车辆")
    @TableField("logink_type")
    private Integer loginkType;

    @ApiModelProperty(value = "车辆类型（0：加油车，1：加汽车）")
    @TableField("vehicle_category")
    private Integer vehicleCategory;

    @ApiModelProperty(value = "有无ETC卡信息，1：有，2：无")
    @TableField("etc_status")
    private Integer etcStatus;

    @ApiModelProperty(value = "车辆颜色")
    @TableField("plate_color")
    private Integer plateColor;

    @ApiModelProperty(value = "ETC查询提交时间")
    @TableField("etc_update_time")
    private Date etcUpdateTime;

    @ApiModelProperty(value = "车辆轴数")
    @TableField("axles")
    private Integer axles;

    @ApiModelProperty(value = "随车手机号")
    @TableField("contact_mobile")
    private String contactMobile;

    @ApiModelProperty(value = "省份编码")
    @TableField("provinceid")
    private Integer provinceid;

    @ApiModelProperty(value = "省份名称")
    @TableField("province")
    private String province;

    @ApiModelProperty(value = "市级编码")
    @TableField("cityid")
    private Integer cityid;

    @ApiModelProperty(value = "市级名称")
    @TableField("city")
    private String city;

    @ApiModelProperty(value = "驳回原因")
    @TableField("reject_reason")
    private String rejectReason;

    @ApiModelProperty(value = "历史备注")
    @TableField("history_remark")
    private String historyRemark;

    @ApiModelProperty(value = "0-注册录入 1-其他快成平台 2-CRM导入")
    @TableField("user_source")
    private Integer userSource;

    @ApiModelProperty(value = "车牌颜色-1:黄色,2:蓝色,3:黄绿色,4:绿色")
    @TableField("plate_number_color")
    private Integer plateNumberColor;

    @ApiModelProperty(value = "1-购车证明/2-贷款购车证明/3-租车证明/4-挂靠证明")
    @TableField("related_poof")
    private Integer relatedPoof;

    @ApiModelProperty(value = "车辆关联证明")
    @TableField("related_poof_pic")
    private String relatedPoofPic;

    @ApiModelProperty(value = "是否维修中-0:否,1:是")
    @TableField("is_maintaining")
    private Integer isMaintaining;

    @ApiModelProperty(value = "车辆绑定来源：0-自己填写信息绑定，1-自己删除过又重新绑定，2-别人已绑定未删除的绑定，3-车老板授权绑定")
    @TableField("source")
    private Integer source;

    @ApiModelProperty(value = "数仓同步以该时间为准")
    @TableField("modified_time")
    private Date modifiedTime;

    @ApiModelProperty(value = "挂车id")
    @TableField("trailer_id")
    private Long trailerId;

    @ApiModelProperty(value = "行驶证档案编号")
    @TableField("driving_license_number")
    private String drivingLicenseNumber;

    @ApiModelProperty(value = "行驶证注册日期")
    @TableField("driving_license_register_time")
    private Date drivingLicenseRegisterTime;

    @ApiModelProperty(value = "行驶证发证日期")
    @TableField("driving_license_start_time")
    private Date drivingLicenseStartTime;

    @ApiModelProperty(value = "行驶证过期日期")
    @TableField("driving_license_end_time")
    private Date drivingLicenseEndTime;

    @ApiModelProperty(value = "排放标准")
    @TableField("emissions_standard")
    private Integer emissionsStandard;

    @ApiModelProperty(value = "车辆类型唯一编码")
    @TableField("axle_code")
    private String axleCode;

    @ApiModelProperty(value = "核载重量")
    @TableField("load_weight")
    private Double loadWeight;

    @ApiModelProperty(value = "车辆添加来源 0-旧快成APP添加，1-建龙APP添加，2-重构APP添加")
    @TableField("register_source")
    private Integer registerSource;

    @ApiModelProperty("车辆行驶证OCR识别结果1 成功 2 失败 3 三次失败")
    @TableField("ocr_driving_license")
    private Integer ocrDrivingLicense;

    @ApiModelProperty("车辆审核设置标签")
    @TableField("label")
    private String label;

    @ApiModelProperty("车辆尺寸")
    @TableField("vehicle_size")
    private String vehicleSize;

    @ApiModelProperty("车辆所有人")
    @TableField("vehicle_owner")
    private String vehicleOwner;

    @ApiModelProperty("车辆使用性质")
    @TableField("vehicle_usage")
    private String vehicleUsage;

    @ApiModelProperty("住址")
    @TableField("vehicle_address")
    private String vehicleAddress;

    @ApiModelProperty("品牌型号")
    @TableField("brand_model")
    private String brandModel;

    @ApiModelProperty("车辆识别代号")
    @TableField("vin")
    private String vin;

    @ApiModelProperty("发动机号码")
    @TableField("engine_number")
    private String engineNumber;

    @ApiModelProperty("行驶证档案号")
    @TableField("license_record_No")
    private String licenseRecordNo;

    @ApiModelProperty("车辆是否自有")
    @TableField("has_relation")
    private String hasRelation;
}
